Communication process and apparatus

ABSTRACT

Communication process for communication between communication participants (S 1,  S 2,  S 3,  S 4 ) provided for control and/or monitoring of a technological process, which are connected in communication with each other by way of a bus system (B) and can be identified using their addresses, whereby each communication participant manages a first group of references as so-called service access points, wherein for at least one of the service access points a second group of references is managed, whereby the access to an individual reference from this second group of references is carried out using the address of the accessing communication participant.

[0001] This is a Continuation of International ApplicationPCT/EP99/05296, with an international filing date of Jul. 23, 1999, thedisclosure of which is incorporated into this application by reference.

FIELD OF AND BACKGROUND OF THE INVENTION

[0002] The present invention relates to a communication process andapparatus for communication between communication participants. Thesecommunication participants are provided for control and/or monitoring ofa technical process and are connected in communication with each otherusing a bus system, in particular a field bus, and can be identifiedusing their addresses. In this process, each communication participantmanages a first group of references as so-called service access points.

[0003] EN 50 170, Part I defines a model for managing receivedresources. This definition expands the source and target addresses ofthe associated communication participants and ultimately represents areference that can be used to handle incoming and/or outgoing dataunambiguously even with different communication relationships. In thefollowing, these expanded source and target addresses are designated asservice access points (SAPs). For example, this means that theconnection relationship which could previously be defined with the dataof the sender and receiver (e.g., sender: station 1, receiver: station3) is expanded in each case with the data for a service access point forthe communication participants involved (e.g., sender: station 1.SAP3,receiver: station 3.SAP5). In this way, communication relationships toseveral other communication participants can be handled unambiguouslyfor each communication participant in that each of these communicationrelationships has a unique service access point made available to it.

[0004] In the majority of the communication relationships, the serviceaccess points are specified implicitly through project planning for eachcommunication relationship. In addition, there are also communicationrelationships in which the sender first sends a message to the potentialreceiver and receives an open service access point from the potentialreceiver as feedback. This open service access point can then be used totransfer data to the potential receiver. The actual message will then besent to this receiver by way of the service access point determined inthis way.

[0005] However, since the number of service access points that areavailable per communication participant is limited, the number ofpossible connections that can be handled in this way are also limited bythe number of service access points.

[0006] Usually, it is specified for each service access point whichcommunication participant has the right to use that service accesspoint. However, there can also be a specification for a service accesspoint that it can be used by all the participating communicationparticipants. Even if, at first glance, this increases the number ofpossible connections, the use of the same service access point byseveral communication participants in operation leads to intolerableproblems.

[0007] For example, a first communication participant sends data over aservice access point that is released to all communication participantsand this communication participant immediately expects a response as areaction to the data sent. This response will only be sent immediatelyafter the data received if the response data is also immediatelyavailable. On the other hand, if the response data is not immediatelyavailable, the communication participant must inquire again at a latertime as to whether the data is available. If, in the meantime, anothercommunication participant attempts to access the same service accesspoint, access will not be denied to it since the service access point isreleased to all communication participants. Instead, the data that wasto be provided to the first communication participant will suddenly goto any communication participant that successfully accessed the serviceaccess point in the time between the original sending operation and thestill pending receipt thereof.

OBJECTS OF THE INVENTION

[0008] Thus, it is an object of the present invention to provide amethod and apparatus for expanding the connection resources that areavailable in a known communication process without impairing the qualityand security and/or effectiveness of the communication.

SUMMARY OF THE INVENTION

[0009] These and other objects are achieved by a communication processand apparatus for communication between communication participantsaccording to the invention. The communication participants are providedfor control and/or monitoring of a technical process and are connectedin communication with each other over a bus system. Each participant canbe identified by an address. In the process defined by the invention,each communication participant manages a first group of references asservice access points. They are managed in such a way that for at leastone of the service access points a second group of references ismanaged, whereby access to an individual reference from this secondgroup of references is carried out using the address of the accessingcommunication participant.

[0010] The first group of references (i.e. service access points) can bea group of so-called pointers, which point to a memory space that isavailable. Alternatively, they may comprise a field wherein each fieldelement has a specific memory area available. In the communicationprocess known from the above standard, the memory area that isreferenced either by using the pointer or the field element can serveeither directly as intermediate storage of the communication data or cancontain an appropriate data structure that indicates memory areas forintermediate storage of the communication data.

[0011] The following will include a more detailed discussion of thatarrangement in which the group of references is implemented as a groupof pointers to memory areas. For example, if a total of five serviceaccess points are available, the resulting group of references comprisesfive pointers each pointing to a separate memory area. These memoryareas may serve directly, or they may serve indirectly in that theyreference the actual memory area by means of further pointers, inproviding intermediate storage of incoming or outgoing communicationdata.

[0012] According to the invention, it is now provided that for at leastone of the service access points, a second group of references ismanaged. The pointer corresponding to the service access point does notpoint directly to the memory area already described above. Instead, itpoints to a memory area which in turn, for example, contains anothergroup of pointers. It is these further pointers that actually point tothe memory areas described above. For example, if a transfer of dataensues to a first communication participant, having e.g. an address 1,by way of the service access point specified according to projectplanning with number 5, and the communication participant with theaddress 3 is sending the data, the fifth pointer (service access point5) from the first group of references will be selected for intermediatestorage of the data received. Additionally, the third pointer will beselected from the memory area that contains the second group ofreferences, because the third pointer of this second group of referencescorresponds to the address 3 of the communication participanttransferring the data.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] In the drawings:

[0014]FIG. 1 shows a bus system with an exemplary number ofcommunication participants;

[0015]FIG. 2 shows another representation of the bus system andcommunication participants, including their service access pointfunctionality;

[0016]FIG. 3 depicts an expanded functionality of the service accesspoints in accordance with the invention;

[0017]FIG. 4 shows one possible memory utilization for service accesspoints;

[0018]FIG. 5 shows a memory utilization embodiment according to theinvention; and

[0019]FIG. 6 shows yet another memory utilization embodiment.

[0020] Further characteristics, advantages and application possibilitiesof the invention will be evident from the claims, from the followingdescription of exemplary embodiments illustrated in the figures, andfrom the figures themselves.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0021]FIG. 1 shows a bus system B with communication participants, orstations S1, S2, S3 and S4, connected to it. The communicationparticipants—stations S1, S2, S3, S4—access the bus system B forcommunicating with each other. To do this, they use a protocol definedfor communication over the bus system B. In the example embodiment, theprotocol defined for the bus system is the so-called Profibus protocol,in particular Profibus-DP. EN 50 170, Part I, also relates to thisprotocol. Naturally, the invention can be implemented using othercommunication protocols.

[0022]FIG. 2 shows the communication participants or stations S1, S2,S3, S4 according to FIG. 1 in another representation. Each communicationparticipant accesses the bus B for communication. To do this, accessingmeans are provided on the bus B for each communication participant,which are usually implemented in special ASICs. The functionality of thebus circuit implemented by software or firmware comprises, inparticular, the functionality of the service access points i.e., SAP1,SAP2, SAP3, SAP4.

[0023] It has also been described above that the service access pointsSAP1, SAP2, SAP3, SAP4 form an expansion of the source and/or targetaddresses of each involved communication participant S1, S2, S3, S4.Thus they enable clear communication relationships of one communicationparticipant with several other communication participants.

[0024] According to FIG. 2, there is a communication relationship fromcommunication participant S1 to communication participant S4 and tocommunication participant S2. In other words, at least two communicationrelationships by the station S1 can remain differentiated by theselection of unique service access points. Specifically, in FIG. 2, theconnection to communication participant S4 occurs by way of the firstservice access point of station S1. Completely analogous relationshipsresult for the other communication participants S2 and S4 involved inthe communication relationships.

[0025] It was also described above that in the case of an inadequatenumber of service access points for all the communication relationshipsto be planned in the project, certain service access points will be usedby several and/or in particular by all the communication participants.The problems involved with this consist especially in that if a stationSi requests data from another station S4 and the data is not immediatelyavailable, the station S1 will have to inquire for the data again at alater time. If, in the meantime, between the initial and the subsequentinquiries of the station S1, another station S2 accesses the serviceaccess point of the requested station S4 that can be used by allcommunication participants, the data actually intended for the firststation S1 erroneously go to second station S2.

[0026] In order to avoid precisely this, a source address filter tableQAC is assigned to each service access point, as shown in FIG. 3.Because of this, practically every individual service access point thatalready represents a type of “user compartment” because of itscharacteristic as a reference, will be divided again into anotherseparate group of “user compartments.” Each of these user compartmentsis assigned to the participating communication participant using theaddress of the communication participant and the corresponding usercompartment number.

[0027] Thus, if according to FIG. 3, which shows the expandedfunctionality of e.g. the service access point 4 from FIG. 2, bothstation S1 and station S2 use the service access point 4 of station S4,all of the station Si data will go into the user compartment with thenumber 1 and all data for station S2 will go into the user compartmentwith number 2. The process works in this way even if, as alreadyexplained above, the same service access point is used, namely serviceaccess point number 4.

[0028] This means that during communication with another communicationparticipant using a previously specified or negotiated service accesspoint, a first communication participant always accesses the usercompartment with the number corresponding either directly to the stationnumber of the first communication participant or one that can beassigned in some other way, e.g., with a uniquely defining correlationslook-up table. Since no address collisions on the bus are tolerated,and, therefore, the addresses of the communication participants arealways unambiguous, it is ensured that access to the user compartmentsoccurs at all times free of conflict.

[0029] For example, the look-up table that may be provided could containthe addresses of the respective communication participants and assign toeach of them a natural number from an increasing or decreasing numericalsequence, preferably starting with 0 (zero). On the other hand, oftenthe addresses of the communication participants are coded in such a waythat, by simple masking of leading bits from each station address, anatural number is obtained that can be interpreted directly as a usercompartment number in the sense of this invention.

[0030] The relationships in the memory for each of the referencesdesigned as pointers are explained using FIGS. 4 and 5. However, firstit should be emphasized again that the references do not necessarilyhave to be formed as pointers. This means it is also possible, forexample, to define appropriate data structures in which access can bemade directly to the individual components of the data structure usingthe respective designation.

[0031]FIG. 4 shows a possible memory utilization for the service accesspoints, as discussed previously. The first group of references,indicated in FIG. 4 with the reference characters SAP, include a groupof pointers P organized in a one-dimensional field. Using the fieldnumber, e.g., 2, access can be made to the respective service accesspoint. The field number thus corresponds directly to a service accesspoint. In the field that can be referenced under the respective number,there is at least one pointer to a memory area that is provided forintermediate storage of the communication data. This means that thepointer assigned to service access point 1 points to memory area M1, thepointer assigned to service access point 2 points to memory area M2,etc.

[0032] In contrast, FIG. 5 shows a possible utilization of the memory inthe scope of a communication process according to the invention. Againthe service access points are organized in one-dimensional fields thatcan be referenced using respective field numbers. Each of these fieldshas at least one pointer P, which, in contrast to the relationshipsshown in FIG. 4, points not directly to a memory area but to a table QACfor source address coding. If a communication participant with anaddress that corresponds directly or indirectly to the natural number 2sends data to a communication participant that executes thecommunication process according to the invention, the data sent goes tothe respective memory areas according to the scheme to be explainedbelow.

[0033] According to the project planning, a service access point isprovided for communication. It will be assumed that service access point1 is used. A pointer is assigned to this service access point and pointsto the source address coding table QAC1. The address of the datatransferring participant is 2 or corresponds to the number 2. Therefore,the element 2 is selected from the source address coding table QAC1. Thepointer P of this element points to memory area M12. This memory area isavailable individually only for this communication process. Data fromanother communication participant, e.g., with the address 1, land in thememory area M11 that is completely separate from memory area M12.

[0034] Let it be noted that the respective memory areas M11, M12, . . .M21, M22, etc. are not necessarily used as memory that can be addressedin a linear manner. FIG. 6 shows a possible form of utilization of thememory areas. According to this, the memory area comprises at least onepointer to a receiving value queue with a first element EH, i.e. thehead element EH, of the receiving wait queue, and elements of thereceiving wait queue EQ, EQ′. A sending wait queue with the head of thesending wait queue RH and elements of the sending wait queue RQ and RQ′are managed completely analogously.

[0035] The unambiguous assignment capability created with the sourceaddress coding of data transferred over the bus, even with the use ofone and the same access point, is particularly advantageous in the scopeof lateral transmission. For this purpose, during lateral transmission,a service access point is used that is planned only for lateraltransmission (however, lateral transmission is naturally possible for,or with, each service access point).

[0036] In the following, this service access point will be designatedthe lateral transmission service access point. The identification andcoding of this lateral transmission service access point is specified inthe message, so this service access point will always be used if theoptions of lateral transmission are to be used. Since a source addresscoding table is also assigned to this lateral transmission serviceaccess point, each message from a publisher in the scope of lateraltransmission goes to a unique address in the memory that is specified bythe lateral transmission service access point in connection with thesource address of the publisher.

[0037] The above description of the preferred embodiments has been givenby way of example. From the disclosure given, those skilled in the artwill not only understand the present invention and its attendantadvantages, but will also find apparent various changes andmodifications to the structures and methods disclosed. It is sought,therefore, to cover all such changes and modifications as fall withinthe spirit and scope of the invention, as defined by the appendedclaims, and equivalents thereof.

What is claimed is:
 1. A communication process between a plurality ofcommunication participants, comprising: connecting said plurality ofcommunication participants into a bus system, said communicationparticipants being identified by respective participant addresses;managing a first group of references as a plurality of service accesspoints using said plurality of communication participants; managing asecond group of references for at least one of said service accesspoints; and accessing a particular reference from said second group ofreferences by way of an address corresponding to the participant addressof the communication participant requesting access to said particularreference.
 2. The communication process as recited in claim 1 , whereinthe communication participants are connected into said bus system for atleast one of controlling and monitoring an automated process.
 3. Thecommunication process as recited in claim 1 , wherein the management ofsaid second group of references includes the use of a unique naturalnumber that corresponds unambiguously to said particular reference. 4.The communication process as recited in claim 3 , wherein saidparticipant address of said communication participant requesting accesscorresponds unambiguously to the unique natural number corresponding tosaid particular reference.
 5. The communication process as recited inclaim 3 , further comprising: converting said participant address ofsaid communication participant requesting access into the unique naturalnumber corresponding to said particular reference.
 6. The communicationprocess as recited in claim 1 , wherein each said communicationparticipant manages a single, respective one of said first group ofreferences as one of said service access points, respectively.
 7. Thecommunication process as recited in claim 1 , wherein each said serviceaccess point has a single respective second group of said managedreferences.
 8. A communication system comprising: a plurality ofcommunication participants; a bus system connecting said plurality ofcommunication participants, wherein said communication participants cancommunicate with each other via said bus system; respective first groupsof references that are managed as a plurality of service access pointsby said plurality of communication participants; and a second group ofreferences that is managed for at least one of said service accesspoints, wherein access to a particular reference from said second groupof references by one of said communication participants is achievedusing an address of said one communication participant seeking access tosaid particular reference.
 9. The communication system as recited inclaim 8 , wherein each said service access point has a respective singlesaid second group of managed references.
 10. The communication system asrecited in claim 8 , wherein the management of said second group ofreferences includes the use of a unique natural number correspondingunambiguously to said particular reference.
 11. The communication systemas recited in claim 10 , wherein said participant address of saidcommunication participant requesting access corresponds unambiguously tothe unique natural number corresponding to said particular reference.12. The communication system as recited in claim 10 , further comprisingan algorithm that correlates said participant address of saidcommunication participant requesting access to the unique natural numbercorresponding to said particular reference.
 13. A method forcommunicating between communication participants over a bus system,comprising: uniquely identifying each of the communication participantswith a respective participant address; providing each of thecommunication participants with a first group of references asrespective service access points; providing a second group of referencesfor at least one of the first group of references; and within the secondgroup of references, routing a communication from one of thecommunication participants in accordance with the participant address ofthe one communication participant.